// 导入createApp函数，用于创建Vue应用
import { createApp } from 'vue'
// 导入createPinia函数，用于创建Pinia状态管理器
import store from './store'

// 导入自定义指令
import directives from './directives'

// 导入ElementPlus组件库
import ElementPlus from 'element-plus'
// 导入ElementPlus的样式
import 'element-plus/dist/index.css'
// 导入ElementPlus的图标库
import * as ElementPlusIconsVue from '@element-plus/icons-vue'

// 引入svg注册脚本
import 'virtual:svg-icons-register'

// 导入App组件
import App from '@/App.vue'
// 导入路由
import router from '@/router/index'
// 导入全局组件注册
// import setupPlugin from '@/plugins'

// 导入样式文件
import '@/assets/styles/index.scss'

// 创建应用实例
const app = createApp(App)



//全局注册ElementPlus
app.use(ElementPlus)

//全局注册ElementPlusIcons
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)
}
//全局注册全局组件
// app.use(setupPlugin)
// 全局注册pinia
app.use(store)

//全局注册路由器
app.use(router)

directives(app)
//挂载
app.mount('#app')
